tg-me.com/golang_for_two/20
Last Update:
Note #4 ΠΠ΅Π±Π°ΠΆΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Go Π² Π΄ΠΎΠΊΠ΅ΡΠ΅ π³
ΠΡΠ°ΠΊ Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ:
- ΠΏΡΡΠΌΡΠ΅ ΡΡΠΊΠΈ ΠΈ ΡΠ°Π·ΠΈΠΊ Ρ ΠΏΡΠ΅Π΄ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌ Π΄ΠΎΠΊΠ΅ΡΠΎΠΌ
$ cat Dockerfile
FROM golang:1.13
WORKDIR /go/src/app
COPY . .
RUN go get -u github.com/go-delve/delve/cmd/dlv
CMD ["app"]
$ docker build -t my-golang-app .
# ΠΡΠΎ Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ², ΠΈΠ½ΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ Π²ΠΌΠ΅ΡΡΠΎ bash ΡΡΠ°Π·Ρ dlv Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅
$ docker run -it --rm my-golang-app bash
$ root@03c1977b1063:/go/src/app# dlv main.go
Error: unknown command "main.go" for "dlv"
Run 'dlv --help' for usage.
root@03c1977b1063:/go/src/app# dlv debug main.go
could not launch process: fork/exec /go/src/app/__debug_bin: operation not permitted
OOps...
ΠΡΠ°ΠΊ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ:
$ docker run -it --rm --security-opt="apparmor=unconfined" --cap-add=SYS_PTRACE my-golang-app bash
Π Π²ΡΠ°Π»Ρ π
$ root@7dc3a7e8b3fc:/go/src/app# dlv debug main.go
Type 'help' for list of commands.
(dlv)
P.S. ΠΎΠΏΡΡΡ ΠΆΠ΅ ΡΡΠΎΡ ΠΆΠ΅ ΡΡΡΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ docker-compose/ Π»ΠΈΠ±ΠΎ Ρ multi-stage Π±ΠΈΠ»Π΄Π°ΠΌΠΈ. ΠΡΠ»ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΠΊΠ°ΠΊ Π΄Π΅Π±Π°ΠΆΠΈΡΡ multi-stage Π±ΠΈΠ»Π΄Ρ Π½Π° ΠΠΎ ΠΏΡΠΎΡΡΠ±Π° ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ β+β Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ ΠΈΠ»ΠΈ ΠΊΠΈΠ½ΡΡΡ ΠΏΠΎΠΌΠΈΠ΄ΠΎΡΠΎΠΌ π .
BY πΊπ¦ Go for two :)
Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283
Share with your friend now:
tg-me.com/golang_for_two/20